package cn.caplike.demo.repository.design.pattern.reactor;

/**
 * Description: 初始分发器.
 * <br>Details: 实际上就是 Reactor 角色. Netty 中的 `subReactor`.
 * 定义了一些规范, 这些规范用于控制事件的调度方式, 同时又提供了应用进行事件处理器的注册, 删除等设施.
 * 事件处理器的核心, 会通过同步事件分离器来等待事件的发生,
 * 一旦事件发生, InitiationDispatcher 首先会分离出每一个事件 (e.g. SelectionKeySet -> selectionKey), 然后调用事件处理器, 最后调用相关的回调方法来处理这些事件.
 *
 * <pre>{@code
 * select (handlers);
 * foreach h in handles loop
 *     h.handle_event(type)
 * end loop
 * }</pre>
 *
 * @author LiKe
 * @version 1.0.0
 * @date 2022-10-19 13:15
 */
public class InitiationDispatcher {

    public void handle_events() {
    }

    /**
     * @param handler {@link EventHandler}
     */
    public void register_handler(Object handler) {
    }

    public void remove_handler(Object handler) {
    }
}
